You are here: Planning the Model > Steps for Doing Simulation > Step 2: Defining the System > Determining Data Requirements
The first step in gathering system data is to determine what data is required for building the model. This should be dictated primarily by the scope and level of detail required to achieve the model objectives as described earlier. It is best to go from general to specific in gathering system data. The initial focus should be on defining the overall process flow to provide a skeletal framework for attaching more detailed information. Detailed information can then be added gradually as it becomes available (e.g., resource requirements, processing times, etc.). Starting with the overall process flow not only provides an orderly approach to data gathering, but also enables the model building process to get started which reduces the amount of time to build and debug the model later. Often, missing data becomes more apparent as the model is being built.
In defining the basic flow of entities through the system, a flow diagram can be useful as a way of documenting and visualizing the physical flow of entities from location to location. Once a flow diagram is made, a structured walk-through can be conducted with those familiar with the operation to ensure that the flow is correct and that nothing has been overlooked. The next step might be to define the detail of how entities move between locations and what resources are used for performing operations at each location. At this point it is appropriate to identify location capacities, move times, processing times, etc.
To direct data gathering efforts and ensure that meetings with others, on whom you depend for model information, are productive, it may be useful to prepare a specific list of questions that identify the data needed. A list of pertinent questions to be answered might include the following:
1. What types of entities are processed in the system and what attributes, if any, distinguish the way in which entities of the same type are processed or routed?
2. What are the route locations in the system (include all places where processing or queuing occurs, or where routing decisions are made) and what are their capacities (i.e., how many entities can each location accommodate or hold at one time)?
3. Besides route locations, what types of resources (personnel, vehicles, equipment) are used in the system and how many units are there of each type (resources used interchangeably may be considered the same type)?
4. What is the routing sequence for each entity type in the system?
5. What activity, if any, takes place for each entity at each route location (define in terms of time required, resources used, number of entities involved and any other decision logic that takes place)?
6. Where, when and in what quantities do entities enter the system (define the schedule, interarrival time, cyclic arrival pattern, or condition which initiates each arrival)?
7. In what order do multiple entities depart from each location (First in, First out; Last in, First out)?
8. In situations where an output entity could be routed to one of several alternative locations, how is the routing decision made (e.g., most available capacity, first available location, probabilistic selection)?
9. How do entities move from one location to the next (define in terms of time and resources required)?
10. What triggers the movement of entities from one location to another (i.e., available capacity at the next location, a request from the downstream location, an external condition)?
11. How do resources move from location to location to perform tasks (define either in terms of speed and distance, or time)?
12. What do resources do when they finish performing a task and there are no other tasks waiting (e.g., stay put, move somewhere else)?
13. In situations where multiple entities could be waiting for the same location or resource when it becomes available, what method is used for making an entity selection (e.g., longest waiting entity, closest entity, highest priority, preemption)?
14. What is the schedule of availability for resources and locations (define in terms of shift and break schedules)?
15. What planned interruptions do resources and locations have (scheduled maintenance, setup, changeover)?
16. What random failures do resources and locations experience (define in terms of distributions describing time to failure and time to repair)?
Depending on the purpose of the simulation and level of detail needed, some of these questions may not be applicable. For very detailed models additional questions may need to be asked. Answers to these questions should provide nearly all of the information necessary to build a model.